home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 42 / Amiga Format AFCD42 (Issue 126, Aug 1999).iso / -serious- / comms / other / slrn / slrn_src / src / makefile.os2 < prev    next >
Makefile  |  1999-05-14  |  10KB  |  206 lines

  1. # Makefile for slrn                               -*- sh -*-
  2. # OS/2 specific version; assumes you're using EMX 0.9b or later.
  3. # OS/2 specific version; assumes you're using EMX 0.9b or later.
  4. #
  5. # 1997, March 01, bjf: Added all necessary (and probably some unnecessay)
  6. #                      dependencies to the $(OBJDIR)/*.o targets.
  7. #
  8. #
  9. #---------------------------------------------------------------------------
  10. # This file is divided into five configurable sections.  The last section
  11. # is optional: Section 5 deals with setting up slrn to read the server name
  12. # from a file. This is probably unnecessary on OS/2.
  13.  
  14. #-----------------------------------------------------------------------------
  15. # 1. Choose a C compiler.  It must understand prototypes.
  16. #-----------------------------------------------------------------------------
  17. CC = gcc -O2 -Zcrtdll -Zmt -DOS2 -D__os2__#
  18. #CC = gcc -g -Zcrtdll -Zmt -DOS2 -D__os2__#
  19.  
  20. #-----------------------------------------------------------------------------
  21. # 2. On a few systems, additional libraries are required.
  22. #-----------------------------------------------------------------------------
  23. MISCLIBS = -lsocket -ltermcap -lvideo# OS/2
  24.  
  25. #-----------------------------------------------------------------------------
  26. # 3. Directory where the slang library, slanglib.a, is located.
  27. #    BUILD SLANG FIRST!!!!  If you do not have it, get it from the same place
  28. #    you picked up slrn.  The current home is space.mit.edu:/pub/davis/slang.
  29. #-----------------------------------------------------------------------------
  30. SDIR = ../../slang/src#                  Location of slang.h
  31. SLIBDIR = $(SDIR)/emxobjs#               Location of libslang.a
  32.  
  33. #-----------------------------------------------------------------------------
  34. # 4. Location where object files are placed.
  35. #-----------------------------------------------------------------------------
  36. OBJDIR = objs#
  37.  
  38. #-----------------------------------------------------------------------------
  39. # 5. If you want to read the server from a file, uncomment the following
  40. #    lines and edit it as appropriate.  See INSTALL for more information.
  41. #    It is also possible to provide defaults for other variables such as the
  42. #    HOSTNAME, etc...  by editing the slrnfeat.h file.  Again, read INSTALL.
  43. #-----------------------------------------------------------------------------
  44. #NNTPSERVERFILE = -DNNTPSERVER_FILE=\"/usr/local/lib/news/nntp_server\"
  45. #SLRNLIBDIR = -DSLRN_LIB_DIR=\"/usr/local/lib/news\"
  46. #SLRNLIBDIR = -DSLRN_LIB_DIR=\"$(HOME)/lib/slrn\"
  47.  
  48. #----------------------------------------------------------------------------
  49. # Nothing below here should require changing.
  50. #----------------------------------------------------------------------------
  51.  
  52. OBJS = $(OBJDIR)/art.o \
  53.        $(OBJDIR)/chmap.o \
  54.        $(OBJDIR)/editscore.o \
  55.        $(OBJDIR)/group.o \
  56.        $(OBJDIR)/hash.o \
  57.        $(OBJDIR)/help.o \
  58.        $(OBJDIR)/interp.o \
  59.        $(OBJDIR)/menu.o \
  60.        $(OBJDIR)/mime.o \
  61.        $(OBJDIR)/misc.o \
  62.        $(OBJDIR)/print.o \
  63.        $(OBJDIR)/post.o \
  64.        $(OBJDIR)/score.o \
  65.        $(OBJDIR)/server.o \
  66.        $(OBJDIR)/slrn.o \
  67.        $(OBJDIR)/sortdate.o \
  68.        $(OBJDIR)/startup.o \
  69.        $(OBJDIR)/ttymsg.o \
  70.        $(OBJDIR)/util.o \
  71.        $(OBJDIR)/uudecode.o \
  72.        $(OBJDIR)/slrndir.o \
  73.        $(OBJDIR)/version.o \
  74.        $(OBJDIR)/xover.o
  75.  
  76. OBJSpull = \
  77.     $(OBJDIR)/version.o \
  78.     $(OBJDIR)/util.o \
  79.     $(OBJDIR)/ttymsg.o \
  80.     $(OBJDIR)/slrnpull.o \
  81.     $(OBJDIR)/sltcp.o \
  82.     $(OBJDIR)/slrndir.o \
  83.     $(OBJDIR)/nntplib.o
  84.  
  85. UUDECODE_OBJS = $(OBJDIR)/util.o $(OBJDIR)/ttymsg.o $(OBJDIR)/slrndir.o
  86.  
  87. CFLAGS = -I. -I$(SDIR) $(SLRNLIBDIR)
  88.  
  89. slrn.exe: $(OBJDIR) config.h slangversion $(OBJS)
  90.     $(CC) $(OBJS) -o slrn.exe -L$(SLIBDIR) -lslang $(MISCLIBS)
  91.     emxbind -s slrn.exe
  92.  
  93. slrnpull.exe: $(OBJDIR) config.h slangversion $(OBJSpull)
  94.     $(CC) $(OBJSpull) -o slrnpull.exe -L$(SLIBDIR) -lslang -lsocket
  95.     emxbind -s slrnpull.exe
  96.  
  97. uudecode: $(OBJDIR)/uudecode1.o $(UUDECODE_OBJS)
  98.     $(CC) $(CFLAGS) -o uudecode.exe $(OBJDIR)/uudecode1.o \
  99.  $(UUDECODE_OBJS) -L$(SLIBDIR) -lslang
  100.     emxbind -s uudecode.exe
  101.  
  102. all:      slrn.exe slrnpull.exe uudecode.exe
  103.  
  104. $(OBJDIR):
  105.     @mkdir $(OBJDIR)
  106.  
  107. config.h: slrnconf.h
  108.     cp slrnconf.h config.h
  109.  
  110. $(OBJDIR)/art.o: art.c config.h slrnfeat.h jdmacros.h slrn.h group.h server.h \
  111.                  nntpcodes.h art.h misc.h ttymsg.h post.h startup.h hash.h \
  112.                  score.h menu.h util.h xover.h chmap.h uudecode.h mime.h
  113.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/art.o art.c
  114. $(OBJDIR)/chmap.o: chmap.c config.h slrnfeat.h jdmacros.h misc.h ttymsg.h \
  115.                  util.h chmap.h group.h art.h charmaps.h
  116.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/chmap.o chmap.c
  117. $(OBJDIR)/editscore.o: editscore.c config.h slrnfeat.h jdmacros.h group.h \
  118.                  art.h startup.h misc.h ttymsg.h score.h util.h
  119.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/editscore.o editscore.c
  120. $(OBJDIR)/group.o: group.c config.h slrnfeat.h jdmacros.h slrn.h group.h \
  121.                  art.h misc.h ttymsg.h post.h server.h nntpcodes.h hash.h \
  122.                  score.h menu.h util.h startup.h
  123.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/group.o group.c
  124. $(OBJDIR)/hash.o: hash.c config.h slrnfeat.h jdmacros.h hash.h
  125.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/hash.o hash.c
  126. $(OBJDIR)/help.o: help.c config.h slrnfeat.h jdmacros.h slrn.h misc.h \
  127.                  ttymsg.h util.h
  128.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/help.o help.c
  129. $(OBJDIR)/interp.o: interp.c config.h slrnfeat.h jdmacros.h slrn.h group.h \
  130.                  art.h misc.h ttymsg.h startup.h server.h nntpcodes.h menu.h \
  131.                  interp.h util.h
  132.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/interp.o interp.c
  133. $(OBJDIR)/menu.o: menu.c config.h slrnfeat.h jdmacros.h slrn.h menu.h misc.h \
  134.                  ttymsg.h
  135.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/menu.o menu.c
  136. $(OBJDIR)/mime.o: mime.c config.h slrnfeat.h jdmacros.h server.h nntpcodes.h \
  137.                  slrn.h misc.h ttymsg.h group.h art.h util.h mime.h
  138.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/mime.o mime.c
  139. $(OBJDIR)/misc.o: misc.c config.h slrnfeat.h jdmacros.h misc.h ttymsg.h \
  140.                  group.h slrn.h post.h server.h nntpcodes.h util.h chmap.h \
  141.                  mime.h
  142.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/misc.o misc.c
  143. $(OBJDIR)/post.o: post.c config.h slrnfeat.h jdmacros.h slrn.h server.h \
  144.                  nntpcodes.h misc.h ttymsg.h post.h group.h art.h uudecode.h \
  145.                  util.h chmap.h mime.h
  146.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/post.o post.c
  147. $(OBJDIR)/score.o: score.c config.h slrnfeat.h jdmacros.h slrn.h group.h \
  148.                  misc.h ttymsg.h server.h nntpcodes.h hash.h util.h art.h \
  149.                  xover.h score.h
  150.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/score.o score.c
  151. $(OBJDIR)/server.o: server.c config.h slrnfeat.h jdmacros.h slrn.h server.h \
  152.                  nntpcodes.h misc.h ttymsg.h util.h startup.h spool.c
  153.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/server.o server.c
  154. $(OBJDIR)/slrn.o: slrn.c config.h slrnfeat.h jdmacros.h server.h nntpcodes.h \
  155.                  slrn.h group.h misc.h ttymsg.h startup.h art.h score.h \
  156.                  util.h chmap.h interp.h
  157.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/slrn.o slrn.c
  158. $(OBJDIR)/sortdate.o: sortdate.c config.h slrnfeat.h slrn.h util.h
  159.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/sortdate.o sortdate.c
  160. $(OBJDIR)/startup.o: startup.c config.h slrnfeat.h jdmacros.h slrn.h group.h \
  161.                  misc.h ttymsg.h art.h post.h startup.h score.h util.h \
  162.                  uudecode.h mime.h interp.h server.h nntpcodes.h chmap.h
  163.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/startup.o startup.c
  164. $(OBJDIR)/ttymsg.o: ttymsg.c config.h ttymsg.h
  165.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/ttymsg.o ttymsg.c
  166. $(OBJDIR)/util.o: util.c config.h jdmacros.h util.h ttymsg.h
  167.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/util.o util.c
  168. $(OBJDIR)/version.o: version.c version.h
  169.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/version.o version.c
  170. $(OBJDIR)/uudecode.o: uudecode.c config.h slrnfeat.h uudecode.h util.h \
  171.                  ttymsg.h jdmacros.h slrn.h misc.h
  172.     $(CC) -c $(CFLAGS) -o $(OBJDIR)/uudecode.o uudecode.c
  173. $(OBJDIR)/uudecode1.o: uudecode.c config.h slrnfeat.h uudecode.h util.h \
  174.                  ttymsg.h jdmacros.h slrn.h misc.h
  175.     $(CC) -c $(CFLAGS) -DSTANDALONE -o $(OBJDIR)/uudecode1.o uudecode.c
  176. $(OBJDI